package uk.org.scuts.bantstadium2.attacks;

import uk.org.scuts.bantstadium2.Character;

public class ThreeRoundBurst extends Attack{
	// Constructors
	public ThreeRoundBurst() {
		_name = "3-Round Burst";
		_aggressionFactor = 100;
		_accuracy = 80;
		_power = 3.0;
	}
	
	// Methods
	public String Execute(Character user, Character target) {
		String log = "";
		if (user.Rage() >= 5)
		{
			log += (user.Name() + " raises " + user.PosPronoun() + " FAMAS, aims at " + target.Name());
			switch (Hits(user, target)) {
			case MISS: 
				log += (" but loses " + user.PosPronoun() + " nerve at the last second. ");
			    break;
			case GLANCING:
				log += (" but " + target.SubPronoun() + " evades the shot. ");
			    break;
			case NORMAL: 
				log += (" and fires. Flesh wound. ");
	        	log += target.Hit(user.Attack() * _power);
	        	break;
			case CRITICAL: 
				log += (" and scores a headshot. ");
				log += target.Hit(user.Attack() * 300 * _power);
				break;
			}
		} else {
			log += (user.Name() + " needs to be angrier to use " + _name + ". ");
		}
		return log;
	}
}
